<?php

class usuario_model extends CI_Model {

	var $usr;
	var $pwd;
	var $est; // posibles estados - A:Activo, I:Inactivo
	var $rol; //TABLE
	var $per; //TABLE

	function __construct()
	{   // Call the Model constructor
		parent::__construct();
	}

	//
	// Necesitamos generar el CRUD para un usuario de nuestra base de datos
	//
	function login($usr,$pwd){
		// Cargamos la base de datos local
		$dbl = $this->load->database('local', TRUE);

		$sql = "SELECT * FROM TBUSR WHERE usr = ? AND pwd = ? ";
		$this->load->helper('security');
		$pwd = do_hash($pwd, 'md5');
		$query = $dbl->query( $sql, array($usr,$pwd));
		if ($query->num_rows() > 0){
			$f = $query->row();
			if ($f->est == 'A') { // Si está activo el usuario.
				// Código de respuesta;
				return 'activo';
			} elseif ($f->est == 'I'){ // Si está inactivo el usuario.
				return 'inactivo';
			}
		} // End-If
		return "ERROR:El usuario no está registrado";
	}
	
	function is_user($usr){
		// Cargamos la base de datos local
		$dbl = $this->load->database('local', TRUE);
		$sql = "SELECT * FROM TBUSR WHERE usr = ?";
		$query = $dbl->query( $sql, array($usr));
		if ($query->num_rows() > 0)	return true;
		else return false;
	}

	function insert_entry($user, $pass, $esta, $role, $pers){
		// Activamos la base de datos local.
		$this->load->database('local');

		// 		$this->usr = $this->input->post('usr'); // por favor leer la nota de abajo
		// 		$this->pwd = $this->input->post('pwd');
		// 		$this->est = $this->input->post('est');
		// 		$this->rol = $this->input->post('rol');
		// 		$this->per = $this->input->post('per');

		$this->load->helper('security');
		$pwd = do_hash($pwd, 'md5'); // MD5
		$sql = "INSERT INTO TBUSR VALUES (?,?,?,?,?)";
		$this->db->query($sql,$user, $pass, $esta, $role, $pers);
		//echo $this->db->last_query();
		return $this->db->affected_rows();
	}

	function registrarEstudiante($id, $key, $pwd){
		// Se recibe el usario y del pwd del portal de Udea, adem�s el pwd para ingresar al portal
		$this->load->model('mares_model');
		$this->load->model('secure_model');
		
		// 1. Validamos si el usuario se encuentra inscrito en el portal.
		$res = $this->is_user($id);
		// Si el usuario ya existe, no se puede crear uno nuevo.
		if ($res){
			echo "El usuario ya se encontraba en la base de datos, si tiene alguna duda rem&iacute;tase al administrador.";
			return;
		}
		// 2. Si no se encuentra en el portal, validamos en mares que se encuentre el usuario
		$doc = $this->secure_model->vermares($id,$key);
		if(!is_numeric($doc)){
			// El usuario no se encuentra registrado en mares o hay datos erroneos.
			echo "No se encontro informacion del usuario en el portal Universitario";
			return;
		}
		// Se procede a validar si el usuario pertenece a la Escuela de micro.
		$pgms = $this->mares_model->est_pgm_activo($doc);
		if(isset($pgm['INACTIVO'])){
			echo 'El usuario no posee los permisos para usar el sistema';
			return;
		}
		$usr = $this->mares_model->info_alumno($doc);
		$pgms = new ArrayObject($pgms);
		$it = $pgms->getIterator();
		if($it->valid()) {
			$usr["EST"] = $it->key(); $usr["PGM"] = $it->current();
		}
		
		// Registremos los datos del usuario en la base de datos
		echo $this->insert_entry($id, $pwd, "A", "EST", 12);
		
		echo "Vamos bien";
	}

	function count(){
		$this->load->database('local');
		$this->db->protect_identifiers('TBUSR');
		$consulta = $this->db->get('TBUSR');

		foreach ($consulta->result() as $fila){
			echo $fila->usr;
		}
	}


}

/* End of file welcome.php */
/* Location: ./application/controllers/welcome.php */